package org.wdcode.base.bean.impl;

import org.wdcode.base.bean.UserBean;

/**
 * 基础的用户接口Bean实现
 * @author WD
 * @since JDK6
 * @version 1.0 2010-03-14
 */
public abstract class BaseUserBean extends BaseStateEntityBean implements UserBean {
	// 昵称
	private String	nickName;
	// 密码
	private String	password;
	// Email
	private String	email;
	// 用户性别
	private Short	sex;

	/**
	 * 构造方法
	 */
	public BaseUserBean() {
		super();
	}

	/**
	 * 构造方法
	 * @param id 用户ID
	 */
	public BaseUserBean(int id) {
		super(id);
	}

	/**
	 * 构造方法
	 * @param id 用户ID
	 * @param name 用户名
	 */
	public BaseUserBean(int id, String name) {
		super(id, name);
	}

	/**
	 * 构造方法
	 * @param id 用户ID
	 * @param name 用户名
	 * @param password 用户密码
	 */
	public BaseUserBean(int id, String name, String password) {
		super(id, name);
		setPassword(password);
	}

	/**
	 * 构造方法
	 * @param id 用户ID
	 * @param name 用户名
	 * @param password 用户密码
	 * @param nickName 用户昵称
	 * @param password 用户密码
	 * @param email 用户Email
	 */
	public BaseUserBean(int id, String name, String password, String nickName, String email) {
		this(id, name, password);
		this.nickName = nickName;
		this.email = email;
	}

	/**
	 * 构造方法
	 * @param id 用户ID
	 * @param name 用户名
	 * @param state 用户状态
	 */
	public BaseUserBean(int id, String name, Short state) {
		super(id, name, state);
	}

	/**
	 * 获得用户昵称
	 * @return 用户昵称
	 */
	public final String getNickName() {
		return nickName;
	}

	/**
	 * 设置用户昵称
	 * @param nickName 用户昵称
	 */
	public final void setNickName(String nickName) {
		this.nickName = nickName;
	}

	/**
	 * 设置用户密码
	 * @param password 用户密码
	 */
	public final void setPassword(String password) {
		this.password = password;
	}

	/**
	 * 获得密码
	 * @return 用户密码
	 */
	public final String getPassword() {
		return password;
	}

	/**
	 * 获得用户Email
	 * @return 用户Email
	 */
	public final String getEmail() {
		return email;
	}

	/**
	 * 设置用户Email
	 * @param email 用户Email
	 */
	public final void setEmail(String email) {
		this.email = email;
	}

	/**
	 * 获得用户性别
	 * @return 用户性别
	 */
	public final Short getSex() {
		return this.sex;
	}

	/**
	 * 设置用户性别
	 * @param sex 用户性别
	 */
	public final void setSex(Short sex) {
		this.sex = sex;
	}
}
